% Chakram is a subproject of Hexena - Haskell Executable Analyser
% License:			GPL-3
% Maintainer:		Montez Fitzpatrick
% Stability:		Experimental
% Portability:		GHC
% Module:			Hexena.Data.FileHeader


\begin{code}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE TypeOperators #-}
module Hexena.Data.FileHeader (FileHeader(..)) where

import Data.Label -- Needs 'fclabels' package
import Data.Word

-- | IMAGE_FILE_HEADER
data FileHeader = FileHeader
  { _machine :: Word16				-- ^ architecture type of the computer: (x86,IA64,x64)
  , _numberOfSections :: Word16		-- ^ NumberOfSections
  , _timeDateStamp :: Word32		-- ^ TimeDateStamp
  , _ptrToSymbolTable :: Word32     -- ^ PointerToSymbolTable
  , _numberOfSymbols :: Word32		-- ^ NumberOfSymbols
  , _sizeOfOptionalHdr :: Word16    -- ^ SizeOfOptionalHeader
  , _characteristics :: Word16		-- ^ Characteristics
  } deriving (Show, Eq, Ord)

mkLabel ''FileHeader
\end{code}
